var tree_tpl = 
{
	'target'  : 'main',	                  // other possible values are: _blank, _parent, _search, _self and _top
	'icon_e'  : '../images/icons/empty.gif', 	  // empty image
	'icon_l'  : '../images/icons/line.gif',       // vertical line
    'icon_32' : '../images/icons/base.gif',       // root leaf icon normal
    'icon_36' : '../images/icons/base.gif',       // root leaf icon selected
	'icon_48' : '../images/icons/base.gif',       // root icon normal
	'icon_52' : '../images/icons/base.gif',       // root icon selected
	'icon_56' : '../images/icons/base.gif',       // root icon opened
	'icon_60' : '../images/icons/base.gif',       // root icon selected
	'icon_16' : '../images/icons/folder.gif',     // node icon normal
	'icon_20' : '../images/icons/folderopen.gif', // node icon selected
	'icon_24' : '../images/icons/folderopen.gif', // node icon opened
	'icon_28' : '../images/icons/folderopen.gif', // node icon selected opened
	'icon_0'  : '../images/icons/page.gif',       // leaf icon normal
	'icon_4'  : '../images/icons/page.gif',       // leaf icon selected
	'icon_2'  : '../images/icons/joinbottom.gif', // junction for leaf
	'icon_3'  : '../images/icons/join.gif',       // junction for last leaf
	'icon_18' : '../images/icons/plusbottom.gif', // junction for closed node
	'icon_19' : '../images/icons/plus.gif',       // junctioin for last closed node
	'icon_26' : '../images/icons/minusbottom.gif',// junction for opened node
	'icon_27' : '../images/icons/minus.gif'       // junctioin for last opended node
};

function tree(tm0,tm1){
	this.tm2=tm1;
	this.tm3=tm0;
	this.tm4=this;
	this.tm5=[];
	this.tm6=null;
	this.tm7=-1;
	
	var tm8=new Image(),tm9=new Image();
	
	tm8.src=tm1['icon_e'];
	tm9.src=tm1['icon_l'];
	tm1['im_e']=tm8;
	tm1['im_l']=tm9;
	for(var i=0;i<64;i++)
		if(tm1['icon_'+i]){
			var tmA=new Image();
			
			tm1['im_'+i]=tmA;
			tmA.src=tm1['icon_'+i]
		}
		this.tmB=function(tmC){
			var tmD=this.tm5[tmC];
			tmD.tmE(tmD.tmF)};
			
			this.tmG=function(tmC){
				return this.tm5[tmC].tmG()
			};
			
			this.tmH=function(tmC){
				this.tm5[tmC].tmI(true)
			};
			
			this.tmJ=function(tmC){
				this.tm5[tmC].tmI()
			};
			
			this.tmK=[];
			for(var i=0;i<tm0.length;i++)
				new tmL(this,i);
			this.tmC=trees.length;
			trees[this.tmC]=this;
			for(var i=0;i<this.tmK.length;i++){
				document.write(this.tmK[i].tmM());
				this.tmK[i].tmE()
			}
		}
		
		function tmL(tmN,tmO){
			this.tm7=tmN.tm7+1;
			this.tm3=tmN.tm3[tmO+(this.tm7?2:0)];
			if(!this.tm3)
				return;
			this.tm4=tmN.tm4;
			this.tmN=tmN;
			this.tmO=tmO;
			this.tmF=!this.tm7;
			this.tmC=this.tm4.tm5.length;
			this.tm4.tm5[this.tmC]=this;
			tmN.tmK[tmO]=this;
			this.tmK=[];
			for(var i=0;i<this.tm3.length-2;i++)
				new tmL(this,i);
			this.tmP=tmQ;
			this.tmE=tmR;
			this.tmG=tmS;
			this.tmM=tmT;
			this.tmI=tmU;
			this.tmV=function(){
				return this.tmO==this.tmN.tmK.length-1
			}
		}
		
		function tmR(tmW){
			var tmX=tmY('i_div'+this.tm4.tmC+'_'+this.tmC);
			
			if(!tmX)return;
			if(!tmX.innerHTML){
				var tmK=[];
				
				for(var i=0;i<this.tmK.length;i++)
					tmK[i]=this.tmK[i].tmM();
				tmX.innerHTML=tmK.join('')
			}
			tmX.style.display=(tmW?'none':'block');
			this.tmF=!tmW;
			
			var tmZ=document.images['j_img'+this.tm4.tmC+'_'+this.tmC],tma=document.images['i_img'+this.tm4.tmC+'_'+this.tmC];
			
			if(tmZ)tmZ.src=this.tmP(true);
			if(tma)tma.src=this.tmP();
			this.tmI()
		}
		function tmS(tmb){
			if(!tmb){
				var tmc=this.tm4.tm6;
				this.tm4.tm6=this;
				
				if(tmc)tmc.tmG(true)
			}
			var tma=document.images['i_img'+this.tm4.tmC+'_'+this.tmC];
			if(tma)tma.src=this.tmP();
			tmY('i_txt'+this.tm4.tmC+'_'+this.tmC).style.fontWeight=tmb?'normal':'bold';
			this.tmI();
			return Boolean(this.tm3[1])
		}
		
		function tmU(tmd){
			window.setTimeout('window.status="'+(tmd?'':this.tm3[0]+(this.tm3[1]?' ('+this.tm3[1]+')':''))+'"',10)
		}
		function tmT(){
			var tme=[],tmf 	= this.tmN;
			var target = "";
			
			for(var i=this.tm7;i>1;i--){
				tme[i]='<img src="'+this.tm4.tm2[tmf.tmV()?'icon_e':'icon_l']+'" border="0" align="absbottom">';
				tmf=tmf.tmN
			}
			
			if(TREE_TARGET[this.tm3[0]] == "")
				target = this.tm4.tm2['target'];
			else
				target = TREE_TARGET[this.tm3[0]];
			
			return '<table cellpadding="0" cellspacing="0" border="0">' 
				+ '<tr><td nowrap>'
				+ (this.tm7?tme.join('')
				+ (this.tmK.length?'<a href="javascript: trees['+this.tm4.tmC+'].tmB('+this.tmC+')" ' 
				+ ' onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" ' 
				+ ' onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')"> ' 
				+ '<img src="'+this.tmP(true)+'" border="0" align="absbottom" name="j_img'+this.tm4.tmC+'_'+this.tmC+'">' //(this.tm3[2] != "")? this.tm3[2] :this.tm4.tm2['target']
				+ '</a>':'<img src="'+this.tmP(true)+'" border="0" align="absbottom">'):'')+'<a href="'+this.tm3[1]+'" target="'+ target +'" onclick="return trees['+this.tm4.tmC+'].tmG('+this.tmC+')" ondblclick="trees['+this.tm4.tmC+'].tmB('+this.tmC+')" onmouseover="trees['+this.tm4.tmC+'].tmJ('+this.tmC+')" onmouseout="trees['+this.tm4.tmC+'].tmH('+this.tmC+')" class="t'+this.tm4.tmC+'i" id="i_txt'+this.tm4.tmC+'_'+this.tmC+'"><img src="'+this.tmP()+'" border="0" align="absbottom" name="i_img'+this.tm4.tmC+'_'+this.tmC+'" class="t'+this.tm4.tmC+'im">'+this.tm3[0]+'</a></td></tr></table>'+(this.tmK.length?'<div id="i_div'+this.tm4.tmC+'_'+this.tmC+'" style="display:none"></div>':'')
		}
		function tmQ(tmg){
			return this.tm4.tm2['icon_'+((this.tm7?0:32)+(this.tmK.length?16:0)+(this.tmK.length&&this.tmF?8:0)+(!tmg&&this.tm4.tm6==this?4:0)+(tmg?2:0)+(tmg&&this.tmV()?1:0))]
		}
		var trees=[];
		tmY=document.all?function(tmh){return document.all[tmh]}:function(tmh){return document.getElementById(tmh)};